home *** CD-ROM | disk | FTP | other *** search
/ Micromanía: 150 Juegos 2010 / 150Juegos_16.iso / Shareware / Shape Smash / shape-smash.swf / scripts / Code / FIELD / effects / _vn252.as < prev    next >
Encoding:
Text File  |  2010-05-14  |  4.3 KB  |  150 lines

  1. package Code.FIELD.effects
  2. {
  3.    import Code.LIB._be548;
  4.    import Code.LIB._rs402;
  5.    import flash.filters.DropShadowFilter;
  6.    import flash.filters.GlowFilter;
  7.    import flash.geom.Point;
  8.    
  9.    public class _vn252 extends _be548
  10.    {
  11.       public static const stGlow:int = 0;
  12.       
  13.       public static const stAddStars:int = 1;
  14.       
  15.       public static const stStarsFly:int = 2;
  16.       
  17.       public static const stInvisible:int = 3;
  18.       
  19.       private var starsC:_be548;
  20.       
  21.       private var glowFilterOuter:GlowFilter;
  22.       
  23.       private var timer:int = 0;
  24.       
  25.       private var stars:Array;
  26.       
  27.       private var _state:int;
  28.       
  29.       private var movingStars:Array;
  30.       
  31.       private var glowColor:int;
  32.       
  33.       private var cellSide:Number;
  34.       
  35.       public function _vn252(param1:Array, param2:Number, param3:int)
  36.       {
  37.          timer = 0;
  38.          super();
  39.          cellSide = param2;
  40.          stars = param1;
  41.          glowColor = param3;
  42.          state = stGlow;
  43.          this.graphics.beginFill(255,0.01);
  44.          this.graphics.drawCircle(0,0,1);
  45.          this.graphics.endFill();
  46.       }
  47.       
  48.       private function _he646() : void
  49.       {
  50.          var _loc1_:_fx371 = null;
  51.          var _loc2_:Point = null;
  52.          _loc1_ = new _fx371();
  53.          _loc2_ = new Point(10 * Math.random() - 10 * Math.random(),-10 * Math.random() + 10 * Math.random());
  54.          _loc2_.normalize(5 + Math.random() * 3);
  55.          movingStars.push([_loc1_,_loc2_]);
  56.          _loc1_.pictureInd = stars.length - 1 - int(Math.random() * (stars.length - 1) * 0.5);
  57.          _loc1_._up144(stars[_loc1_.pictureInd]);
  58.          _loc1_.step = 0;
  59.          _loc1_._vq458 = cellSide * Math.random() * 0.8;
  60.          _loc1_._vg471 = cellSide * Math.random() * 0.8;
  61.          _loc1_.totalSteps = 12 + Math.random() * 4;
  62.          starsC.addChild(_loc1_);
  63.       }
  64.       
  65.       public function set state(param1:int) : void
  66.       {
  67.          var _loc2_:DropShadowFilter = null;
  68.          var _loc3_:int = 0;
  69.          var _loc4_:int = 0;
  70.          _state = param1;
  71.          switch(state)
  72.          {
  73.             case stGlow:
  74.                glowFilterOuter = new GlowFilter(glowColor,1,cellSide * 0.2 * _rs402._oy577,cellSide * 0.2 * _rs402._oy577,2);
  75.                _loc2_ = new DropShadowFilter(5,45,0,0.4);
  76.                filters = [glowFilterOuter];
  77.                state = stAddStars;
  78.                break;
  79.             case stAddStars:
  80.                starsC = new _be548();
  81.                movingStars = new Array();
  82.                _loc3_ = 5 + Math.random() * 4;
  83.                _loc4_ = 0;
  84.                while(_loc4_ < _loc3_)
  85.                {
  86.                   _he646();
  87.                   _loc4_++;
  88.                }
  89.                state = stStarsFly;
  90.                addChild(starsC);
  91.                timer = 0;
  92.          }
  93.       }
  94.       
  95.       public function get state() : int
  96.       {
  97.          return _state;
  98.       }
  99.       
  100.       public function onEnterFrame() : void
  101.       {
  102.          var _loc1_:int = 0;
  103.          switch(state)
  104.          {
  105.             case stGlow:
  106.                break;
  107.             case stStarsFly:
  108.                _loc1_ = 0;
  109.                while(_loc1_ < movingStars.length)
  110.                {
  111.                   if(!_is22(_loc1_))
  112.                   {
  113.                      starsC.removeChild(movingStars[_loc1_][0]);
  114.                      movingStars.splice(_loc1_,1);
  115.                      _loc1_--;
  116.                   }
  117.                   _loc1_++;
  118.                }
  119.                if(movingStars.length == 0)
  120.                {
  121.                   state = stInvisible;
  122.                }
  123.          }
  124.       }
  125.       
  126.       private function _is22(param1:int) : Boolean
  127.       {
  128.          var _loc2_:_fx371 = null;
  129.          var _loc3_:Point = null;
  130.          _loc2_ = movingStars[param1][0];
  131.          _loc3_ = movingStars[param1][1];
  132.          _loc2_._vq458 += _loc3_.x;
  133.          _loc2_._vg471 += _loc3_.y;
  134.          ++_loc2_.step;
  135.          if(++_loc2_.presc >= 2)
  136.          {
  137.             _loc2_.presc = 0;
  138.             --_loc2_.pictureInd;
  139.             if(_loc2_.pictureInd < 0)
  140.             {
  141.                return false;
  142.             }
  143.             _loc2_._up144(stars[_loc2_.pictureInd]);
  144.          }
  145.          return true;
  146.       }
  147.    }
  148. }
  149.  
  150.